The field of processing customer orders has seen many changes in recent years. In particular, advances in electronic communication such as the Internet suggests the potential for more rapid processing of electronically placed orders. However, problems still exist in processing the orders efficiently. In particular, order processing may be delayed unnecessarily because of inefficiencies and hold-ups with conventional order-processing systems.
An emerging system for processing customer orders is electronic procurement applications. These conventional systems provide for a way for businesses to order products from multiple on-line vendors by initially accessing a web site for the electronic procurement application. For example, an electronic procurement application allows a company's purchasing agents to access the electronic procurement application, select a vendor web site to be electronically transferred to, and order all of their products from within a single application electronically. Additionally, these electronic procurement applications allow buyers to systematically track and approve purchases and allow spending patterns to be analyzed.
In another conventional order-processing system, a customer may place an order for a configurable product via a method such as the Internet. For example, if a company desires to purchase a complex product, a user will first access a web site for a company that sells the product. The web site may allow the user to build a product according to selected specifications, in other words, to configure the product. For example, the user will configure a computer with 128 megabytes of RAM, 20 megabyte hard drive, selected software, etc. Some conventional systems will screen the order to determine whether it is configured properly. For example, a set of rules will be run to determine whether there is enough memory for the selected software, etc. Additionally, the system will test whether all of the shipping and billing information was properly provided. If not, the order will be flagged and not allowed to be further processed until the problem has been corrected. Unfortunately, flagging errors may delay processing of the order. For example, if the person placing the order does not know the shipping address the order is delayed.
In many business-to-business scenarios, the order must be approved by someone other than the person placing the order. For example, the engineer who configures the product may not have authority to approve the order, as it may be a very expensive order. Consequently, later a manager or purchasing agent will approve the order. Unfortunately, some conventional systems do not let an order go from the configure stage to the approve stage without having all the order information filled in. Thus, delays may occur.
Some conventional systems that allow for ordering configurable products make frequent updates to the rules that determine valid product configurations. For example, by providing for frequent rule changes, the customer will be assured of always getting the proper software updates and fixes, and will not order products that are at the end-of-life. Some conventional systems will force the user to perform a configuration check for every line in an order if such rule updates have occurred. For example, a rule change may cause a line on an order to be set to “unverified”. This will force the user to run a configuration check. However, in most cases, the configuration check would pass if run. Thus, the user is forced to waste time running unnecessary steps. In other cases, the order will be flagged as an invalid configuration. However, the manager who is approving the order will not know how to fix the product configuration problem. Consequently, the company will have to have the engineer log into the web site again and configure a new product. Then, the order waits for management approval. In theory, an order could go through the approval chain again and again. Thus, a manager may be asked to approve an order for the same product more than once. Thus, order processing is complicated. Furthermore, the consequential delay in shipping the order may cause the customer to lose revenue and/or delay production.
Therefore, it would be advantageous to provide a method for allowing an electronically placed order for a configurable product to be automatically processed without delay. What is still further needed is a method which simplifies order processing for the customer and does not require unnecessary multiple order approvals. What is still further needed is a method for processing order for configurable products with frequent rule changes regarding allowable configurations.